8037f790: 27 bd ff e0  ADDIU sp, sp, 0xffffffe0 (-32)
8037f794: af bf 00 14  SW ra, sp, 0x14 (20)

8037f798: 3c 0e 80 39  LUI t6, 0x8039 (32825)
8037f79c: 85 ce b8 ac  LH t6, t6, 0xffffb8ac (-18260)
8037f7a0: 24 01 ff ff  ADDIU at, r0, 0xffffffff (-1)
8037f7a4: 11 c1 00 52  BEQ at, t6, 0x8037f8f0 (pc + 0x148)
8037f7a8: 00 00 00 00  NOP

8037f7ac: 3c 18 80 39  LUI t8, 0x8039 (32825)
8037f7b0: 87 18 b8 ac  LH t8, t8, 0xffffb8ac (-18260)
8037f7b4: 3c 0f 80 33  LUI t7, 0x8033 (32819)
8037f7b8: 8d ef dd c8  LW t7, t7, 0xffffddc8 (-8760)
8037f7bc: 00 18 c9 00  SLL t9, t8, 0x4 (4)
8037f7c0: 03 38 c8 23  SUBU t9, t9, t8
8037f7c4: 00 19 c8 80  SLL t9, t9, 0x2 (2)
8037f7c8: 01 f9 40 21  ADDU t0, t7, t9
8037f7cc: 8d 09 00 1c  LW t1, t0, 0x1c (28)
8037f7d0: 15 20 00 21  BNE t1, r0, 0x8037f858 (pc + 0x84)     if ((*(0x8032ddc8))[*(0x8038b8ac)]->off0x1c) goto 0x8037f858
8037f7d4: 00 00 00 00  NOP

8037f7d8: 3c 04 80 39  LUI a0, 0x8039 (32825)
8037f7dc: 8c 84 b8 a0  LW a0, a0, 0xffffb8a0 (-18272)
8037f7e0: 0c 09 e2 ae  JAL 0x80278ab8 (-2144892232)
8037f7e4: 24 05 00 20  ADDIU a1, r0, 0x20 (32)
8037f7e8: 3c 0b 80 39  LUI t3, 0x8039 (32825)
8037f7ec: 85 6b b8 ac  LH t3, t3, 0xffffb8ac (-18260)
8037f7f0: 3c 0a 80 33  LUI t2, 0x8033 (32819)
8037f7f4: 8d 4a dd c8  LW t2, t2, 0xffffddc8 (-8760)
8037f7f8: 00 0b 61 00  SLL t4, t3, 0x4 (4)
8037f7fc: 01 8b 60 23  SUBU t4, t4, t3
8037f800: 00 0c 60 80  SLL t4, t4, 0x2 (2)
8037f804: 01 4c 68 21  ADDU t5, t2, t4
8037f808: ad a2 00 1c  SW v0, t5, 0x1c (28)                   (*(0x8032ddc8))[*(0x8038b8ac)]->off0x1c = 0x80278ab8(*(0x8038b8a0), 0x20)

8037f80c: af a0 00 1c  SW r0, sp, 0x1c (28)                   [sp + 0x1c] = 0

8037f810: 3c 18 80 39  LUI t8, 0x8039 (32825)
8037f814: 87 18 b8 ac  LH t8, t8, 0xffffb8ac (-18260)
8037f818: 3c 0e 80 33  LUI t6, 0x8033 (32819)
8037f81c: 8d ce dd c8  LW t6, t6, 0xffffddc8 (-8760)
8037f820: 00 18 79 00  SLL t7, t8, 0x4 (4)
8037f824: 01 f8 78 23  SUBU t7, t7, t8
8037f828: 00 0f 78 80  SLL t7, t7, 0x2 (2)
8037f82c: 8f a9 00 1c  LW t1, sp, 0x1c (28)
8037f830: 01 cf c8 21  ADDU t9, t6, t7
8037f834: 8f 28 00 1c  LW t0, t9, 0x1c (28)                   t0 = (*(0x8032ddc8))[*(0x8038b8ac)]->off0x1c
8037f838: 00 09 58 c0  SLL t3, t1, 0x3 (3)                    t3 = [sp + 1c] * 8
8037f83c: 01 0b 50 21  ADDU t2, t0, t3                        t2 = (*(0x8032ddc8))[*(0x8038b8ac)]->off0x1c + [sp + 1c] * 8
8037f840: a1 40 00 00  SB r0, t2, 0x0 (0)                     *((*(0x8032ddc8))[*(0x8038b8ac)]->off0x1c + [sp + 1c] * 8) = 0;

8037f844: 8f ac 00 1c  LW t4, sp, 0x1c (28)
8037f848: 25 8d 00 01  ADDIU t5, t4, 0x1 (1)
8037f84c: 29 a1 00 04  SLTI at, t5, 0x4 (4)
8037f850: 14 20 ff ef  BNE at, r0, 0x8037f810 (pc - 0x44)     if (++[sp + 0x1c] < 4) goto 0x8037f810
8037f854: af ad 00 1c  SW t5, sp, 0x1c (28)

8037f858: 3c 0e 80 39  LUI t6, 0x8039 (32825)
8037f85c: 85 ce b8 ac  LH t6, t6, 0xffffb8ac (-18260)         t6 = *(0x8038b8ac)
8037f860: 3c 18 80 33  LUI t8, 0x8033 (32819)
8037f864: 3c 08 80 39  LUI t0, 0x8039 (32825)
8037f868: 8d 08 be 28  LW t0, t0, 0xffffbe28 (-16856)         t0 = *(0x8038be28)
8037f86c: 8f 18 dd c8  LW t8, t8, 0xffffddc8 (-8760)          t8 = *(0x8032ddc8)
8037f870: 00 0e 79 00  SLL t7, t6, 0x4 (4)                    t7 = t6 * 16 = *(0x8038b8ac) * 16
8037f874: 01 ee 78 23  SUBU t7, t7, t6                        t7 = t7 - t6 = *(0x8038b8ac) * 15
8037f878: 00 0f 78 80  SLL t7, t7, 0x2 (2)                    t7 = t7 * 4 = *(0x8038b8ac) * 30
8037f87c: 91 0b 00 02  LBU t3, t0, 0x2 (2)                    t3 = *(t0 + 2) = *(*(0x8038be28) + 2)
8037f880: 03 0f c8 21  ADDU t9, t8, t7                        t9 = t8 + t7 = *(0x8032ddc8) + *(0x8038b8ac) * 30
8037f884: 8f 29 00 1c  LW t1, t9, 0x1c (28)                   t1 = *(*(0x8032ddc8) + *(0x8038b8ac) * 30 + 0x1c)
8037f888: 00 0b 50 c0  SLL t2, t3, 0x3 (3)                    t2 = t3 * 8 = *(*(0x8038be28) + 2) * 8
8037f88c: 01 49 60 21  ADDU t4, t2, t1                        t4 = t2 + t1 = *(*(0x8038be28) + 2) * 8 + *(*(0x8032ddc8) + *(0x8038b8ac) * 30 + 0x1c)
8037f890: af ac 00 18  SW t4, sp, 0x18 (24)                   [sp + 0x18] = *(*(0x8038be28) + 2) * 8 + *(*(0x8032ddc8) + *(0x8038b8ac) * 30 + 0x1c)

8037f894: 8f ae 00 18  LW t6, sp, 0x18 (24)
8037f898: 24 0d 00 01  ADDIU t5, r0, 0x1 (1)
8037f89c: a1 cd 00 00  SB t5, t6, 0x0 (0)                     *([sp + 0x18] + 0x0) = 1

8037f8a0: 3c 18 80 39  LUI t8, 0x8039 (32825)
8037f8a4: 8f 18 be 28  LW t8, t8, 0xffffbe28 (-16856)
8037f8a8: 8f b9 00 18  LW t9, sp, 0x18 (24)
8037f8ac: 93 0f 00 03  LBU t7, t8, 0x3 (3)
8037f8b0: a3 2f 00 01  SB t7, t9, 0x1 (1)                     *([sp + 0x18] + 0x1) = *(*(0x8038be28) + 3)

8037f8b4: 3c 08 80 39  LUI t0, 0x8039 (32825)
8037f8b8: 8d 08 be 28  LW t0, t0, 0xffffbe28 (-16856)
8037f8bc: 8f aa 00 18  LW t2, sp, 0x18 (24)
8037f8c0: 85 0b 00 04  LH t3, t0, 0x4 (4)
8037f8c4: a5 4b 00 02  SH t3, t2, 0x2 (2)                     *([sp + 0x18] + 0x2) = *(*(0x8038be28) + 4)

8037f8c8: 3c 09 80 39  LUI t1, 0x8039 (32825)
8037f8cc: 8d 29 be 28  LW t1, t1, 0xffffbe28 (-16856)
8037f8d0: 8f ad 00 18  LW t5, sp, 0x18 (24)
8037f8d4: 85 2c 00 06  LH t4, t1, 0x6 (6)
8037f8d8: a5 ac 00 04  SH t4, t5, 0x4 (4)                     *([sp + 0x18] + 0x4) = *(*(0x8038be28) + 6)

8037f8dc: 3c 0e 80 39  LUI t6, 0x8039 (32825)
8037f8e0: 8d ce be 28  LW t6, t6, 0xffffbe28 (-16856)
8037f8e4: 8f af 00 18  LW t7, sp, 0x18 (24)
8037f8e8: 85 d8 00 08  LH t8, t6, 0x8 (8)
8037f8ec: a5 f8 00 06  SH t8, t7, 0x6 (6)                     *([sp + 0x18] + 0x6) = *(*(0x8038be28) + 8)

8037f8f0: 3c 19 80 39  LUI t9, 0x8039 (32825)
8037f8f4: 8f 39 be 28  LW t9, t9, 0xffffbe28 (-16856)
8037f8f8: 3c 01 80 39  LUI at, 0x8039 (32825)
8037f8fc: 93 28 00 01  LBU t0, t9, 0x1 (1)
8037f900: 03 28 58 21  ADDU t3, t9, t0
8037f904: ac 2b be 28  SW t3, at, 0xffffbe28 (-16856)

8037f908: 10 00 00 01  BEQ r0, r0, 0x8037f910 (pc + 0x4)
8037f90c: 00 00 00 00  NOP
8037f910: 8f bf 00 14  LW ra, sp, 0x14 (20)
8037f914: 27 bd 00 20  ADDIU sp, sp, 0x20 (32)
8037f918: 03 e0 00 08  JR ra
8037f91c: 00 00 00 00  NOP



LEVELCOMMAND28 {
    char cmd;   0
    char size;  1
    char a;     2
    char b;     3
    short c;    4
    short d;    6
    short e;    8
}

[sp + 0x18]  ptr


[sp + 0x18] = *(*(0x8038be28) + 2) * 8 + *(*(0x8032ddc8) + *(0x8038b8ac) * 30 + 0x1c)
*([sp + 0x18] + 0x0) = 1
*([sp + 0x18] + 0x1) = *(*(0x8038be28) + 3)
*([sp + 0x18] + 0x2) = *(*(0x8038be28) + 4)
*([sp + 0x18] + 0x4) = *(*(0x8038be28) + 6)
*([sp + 0x18] + 0x6) = *(*(0x8038be28) + 8)


CORRECTION: 60 !!!

[sp + 0x18] = (*(0x8032ddc8))[*(0x8038b8ac)]->off0x1c[lvlloadwp->off0x02];
*([sp + 0x18] + 0x0) = 1
*([sp + 0x18] + 0x1) = *(*(0x8038be28) + 3)
*([sp + 0x18] + 0x2) = *(*(0x8038be28) + 4)
*([sp + 0x18] + 0x4) = *(*(0x8038be28) + 6)
*([sp + 0x18] + 0x6) = *(*(0x8038be28) + 8)
